package com.kgcx.order.common;

import com.kgcx.common.eum.OrderEnum;
import com.kgcx.common.utils.DateTimeUtils;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * Created by Paul on 2017/11/17.
 */
public class Util {

    /**
     * 乘客待支付，按理只能1单，但是也可能多单（同时多个进行中的订单，依次到达目的地）(order_state = 9)
     * redis 存 List
     * @param userId
     * @return
     */
    public static String getUserOrdersPendingPayKey(long userId){
        return OrderEnum.ORDERS_USER + "_PENDING_PAY_" + String.valueOf(userId);
    }

    /**
     * 乘客未完成，列表（目前限制2单, order_state <= 8）
     * redis 存 List
     * @param userId
     * @return
     */
    public static String getUserOrdersOngoingKey(long userId){
        return OrderEnum.ORDERS_USER + "_ONGOING_" + String.valueOf(userId);
    }

    /**
     * 乘客用户预约未完成，列表（目前限制2单, order_state <= 8）
     * redis 存 List
     * @param userId
     * @return
     */
    public static String getUserOrdersPlanOngoingKey(long userId){
        return OrderEnum.ORDERS_USER + "_PlanONGOING_" + String.valueOf(userId);
    }

    /**
     * 司机待支付，列表(order_state = 10)
     * redis 存 List
     * @param driverId
     * @return
     */
//    public static String getDriverOrdersPendingPayKey(long driverId){
//        return OrderEnum.ORDERS_DRIVER + "_PENDING_PAY_" + String.valueOf(driverId);
//    }

    /**
     * 司机服务中，只能1单（未点结束行程,order_state < 8）
     * redis 存 ??
     * @param driverId
     * @return
     */
    public static String getDriverOrdersInServiceKey(long driverId){
        return OrderEnum.ORDERS_DRIVER + "_IN_SERVICE_" + String.valueOf(driverId);
    }
    /**
     * 司机订单概览
     * @param driverId
     * @return
     */
    public static String getDriverOrdersSummaryKey(long driverId){
        return  String.valueOf(driverId) + "_" + DateTimeUtils.convertNumberDay(LocalDateTime.now());
    }

}
